home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / tls / tls085.solintel.Z / tls085.solintel / lib / vtcl / tests / checkbox.tcl < prev    next >
Encoding:
Text File  |  1995-07-20  |  1.8 KB  |  78 lines

  1. # CVS $Id: checkbox.tcl,v 1.3 1995/02/03 16:54:21 zibi Exp $
  2.  
  3. #
  4. # a minimal test of the checkbox widget
  5. #
  6.  
  7. source tools.tcl
  8.  
  9. proc quitCB {form cbs} {
  10.     VtClose
  11. }
  12.  
  13. proc toggleChangedCB {cbs} {
  14.     global label label2 label3 rc1 rc2
  15.  
  16.     set short [CBSGetWidgetShortName $cbs]
  17.     set val [keylget cbs set]
  18.     VtSetValues $label -label "Widget: $short  Value: $val"
  19.     set cb1 [VtGetValues $rc1 -valueList]
  20.     VtSetValues $label2 -label "Checkbox1: $cb1"
  21.     set cb2 [VtGetValues $rc2 -valueList]
  22.     VtSetValues $label3 -label "Checkbox2: $cb2"
  23. }
  24.  
  25. proc nextToggle {name label last} {
  26.     if {$last == ""} {
  27.     set tog [VtToggleButton $name -label $label -value 1 \
  28.         -callback toggleChangedCB \
  29.              -xmArgs "XmNbackground red"]
  30.     } else {
  31.        set tog [VtToggleButton $name -label $label \
  32.         -callback toggleChangedCB \
  33.              -xmArgs "XmNbackground red"]
  34.     }
  35.  
  36.     return $tog
  37. }
  38.  
  39. set app [VtOpen "testcheckbox"]
  40.  
  41. set fn [VtStartForm $app.form -title "Test CheckBox" \
  42.        -xmArgs "XmNmarginWidth 10
  43.                 XmNmarginHeight 10
  44.             XmNbackground green"]
  45.  
  46. set rc1 [VtCheckBox $fn.rc1 -borderWidth 2]
  47.  
  48. set tog ""
  49. foreach i {1 2 3} {
  50.     set tog [nextToggle $rc1.tog$i "Toggle $i" $tog]
  51. }
  52.  
  53. set rc2 [VtCheckBox $fn.rc2 -below $fn.rc1 \
  54.     -borderWidth 2]
  55.  
  56. foreach i {4 5 6} {
  57.     set tog [nextToggle $rc2.tog$i "Toggle $i" $tog]
  58. }
  59.  
  60. set label [VtLabel $fn.label -label "No Callback Yet" -below $rc2]
  61. set label2 [VtLabel $fn.label2 -label "No Callback Yet" -below $label]
  62. set label3 [VtLabel $fn.label3 -label "No Callback Yet" -below $label2]
  63.  
  64. VtPushButton $fn.quit -callback "quitCB $fn" \
  65.     -below $label3 \
  66.     -leftSide FORM\
  67.     -rightSide FORM\
  68.     -topOffset 10\
  69.     -leftOffset 5 \
  70.     -rightOffset 5\
  71.     -CHARM_topOffset 1\
  72.     -CHARM_leftOffset 2\
  73.     -CHARM_rightOffset 2
  74.  
  75. VtManage $fn
  76. VtMainLoop
  77.  
  78.